home *** CD-ROM | disk | FTP | other *** search
/ Die Speccy' 97 / Die Speccy' 97.iso / amiga_system / the_aminet / comm / bbs / amms20d.lha / amms / menu / Sysop.bat < prev   
DOS Batch File  |  1995-05-22  |  5KB  |  174 lines

  1. ;    $VER: 1.02 / 22.05.1995
  2. ; Einstellungs-Menue
  3. ; ------------------
  4. ; Im Menu ist Command-Bit 6 gesetzt. Deshalb kann der User definiert
  5. ; auf Befehle zugreifen, auf die er normalerweise keinen Zugriff hat.
  6. ; Die Variable COM wird zum Erkennen von Fehlern benutzt. Tritt ein
  7. ; Fehler auf, so wird in die Routine SAVE_ERROR verzweigt, die den Fehler
  8. ; im File mbdat:menu.err protokolliert.
  9. ; Die Variable JUMP wird zum eventuellen Sprung von einem Untermenue zum
  10. ; anderen benutzt, ohne das Hauptmenue dazwischen aufzurufen. In dieser
  11. ; Variable muss dann das entsprechende Label des Untermenues stehen.
  12. ; Soll kein Schnell-Wechsel stattfinden, so darf die Variable JUMP nicht
  13. ; geaendert werden.
  14. ;
  15.  
  16. ;
  17. ; **** Einstellungs-Menue
  18. ;
  19. MENU="Sysop"                ; Name des Menues
  20. _on error SAVE_ERROR            ; Beim Fehler -> Fehlerbehandlungsrou.
  21.  
  22. ; Menuetext ausgeben und Tasten abfragen
  23.  
  24. MENU:
  25. COM="MENU"                ; Menupunkt in Variable COM speichern
  26. COMNAME="Sysop-Menu"            ; WHO-Befehlsname setzen
  27. _menu/file "menu:'{ALANGUAGE}'/sysop.txt" -
  28.  "^R" MENU -                ; Bildschirm erneuern
  29.  "A" SHOW_APPLICATIONS -        ; Userantrage anschauen
  30.  "B" CLI -                ; Befehleebene
  31.  "E" SHOW_EVENTLOGS -            ; Eventlogs anschauen
  32.  "F" SHOW_ERRORTXT -            ; Datei mbdat:errors.txt anschauen
  33.  "M" SHOW_MENUERR -            ; Menuefehler anschauen
  34.  "P" PASSWORD -                ; Passwort aendern
  35.  "Q" MAIN -                 ; Main-Menue
  36.  "S" SHOW_USER -            ; Userdaten anschauen
  37.  "U" EDIT_USER                ; Usereditor
  38.  
  39. ;
  40. ; **** Endroutine
  41. ; **** Diese Routine muss fuer das Beenden des Menues aufgerufen werden.
  42. ;
  43. END:
  44. _eod                    ; Ende
  45.  
  46. ;
  47. ; **** Userantraege anschauen
  48. ;
  49. SHOW_APPLICATIONS:
  50. COM="EDIT APPLICATIONS"            ; Menupunkt setzen
  51. COMNAME=COM                ; WHO-Befehlsname setzen
  52. _ex echo >>mbdat:antraege.txt ""    ; File erzeugen, falls nicht vorhanden
  53. _disk edit "mbdat:antraege.txt"        ; Userantraege aendern
  54. _goto MENU                ; -> Menue
  55.  
  56. ;
  57. ; **** Rueckkehr in die Befehlsebene
  58. ;
  59. CLI:
  60. COM="CLI"                ; Menupunkt setzen
  61. JUMP=="CLI"                ; Einsprunglabel im Main-Menue setzen
  62. _goto END                ; Ende der Batchdatei
  63.  
  64. ;
  65. ; **** Eventlogs anschauen
  66. ;
  67. SHOW_EVENTLOGS:
  68. COM="SHOW EVENTLOGS"            ; Menupunkt setzen
  69. COMNAME=COM                ; WHO-Befehlsname setzen
  70. _ex echo >>mbdat:event.log ""        ; File erzeugen, falls nicht vorhanden
  71. _disk edit "mbdat:event.log"        ; Eventlogs aendern
  72. _goto MENU                ; -> Menue
  73.  
  74. ;
  75. ; **** Datei mbdat:errors.txt anschauen
  76. ;
  77. SHOW_ERRORTXT:
  78. COM="SHOW ERRORTXT"            ; Menupunkt setzen
  79. COMNAME=COM                ; WHO-Befehlsname setzen
  80. _ex echo >>mbdat:errors.txt NOLINE    ; File erzeugen, falls nicht vorhanden
  81. _disk edit "mbdat:errors.txt"        ; Errors.txt aendern
  82. _goto MENU                ; -> Menue
  83.  
  84. ;
  85. ; **** Menufehler anschauen
  86. ;
  87. SHOW_MENUERR:
  88. COM="SHOW MENUERR"            ; Menupunkt setzen
  89. COMNAME=COM                ; WHO-Befehlsname setzen
  90. _ex echo >>mbdat:menu.err ""        ; File erzeugen, falls nicht vorhanden
  91. _disk edit "mbdat:menu.err"        ; Menuefehler aendern
  92. _goto MENU                ; -> Menue
  93.  
  94. ;
  95. ; **** Userdaten anschauen
  96. ;
  97. PASSWORD:
  98. COM="SET PW"                ; Menupunkt setzen
  99. COMNAME=COM                ; WHO-Befehlsname setzen
  100. _disk text "menu:'{ALANGUAGE}'/password.txt" ; Infotext anzeigen
  101. _input/maxlength=20 NAME ""        ; Prompt steht im Info / Name eingeben
  102. _if NAME == "" then _goto MENU        ; Bei Leereingabe -> Menue
  103. _check user "'NAME'" MENU        ; Falls User nicht existiert -> Menue
  104. _echo                    ; Leerzeile ausgeben
  105. _set pw "'NAME'"            ; User-Passwort aendern
  106. _gosub WAIT                ; Auf Taste warten
  107. _goto MENU                ; -> Menue
  108.  
  109. ;
  110. ; **** Main-Menue
  111. ;
  112. MAIN:
  113. COM="MAIN"                ; Menupunkt setzen
  114. _goto END                ; Ende der Batchdatei
  115.  
  116. ;
  117. ; **** Userdaten anschauen
  118. ;
  119. SHOW_USER:
  120. COM="SHOW USER"                ; Menupunkt setzen
  121. COMNAME=COM                ; WHO-Befehlsname setzen
  122. _disk text "menu:'{ALANGUAGE}'/show_user.txt" ; Infotext anzeigen
  123. _input/maxlength=20 NAME ""        ; Prompt steht im Info / Name eingeben
  124. _echo                    ; Leerzeile ausgeben
  125. _show user "'NAME'"            ; User listen
  126. _gosub WAIT                ; Auf Taste warten
  127. _goto MENU                ; -> Menue
  128.  
  129. ;
  130. ; **** Userdaten aendern
  131. ;
  132. EDIT_USER:
  133. COM="EDIT USER"                ; Menupunkt setzen
  134. COMNAME=COM                ; WHO-Befehlsname setzen
  135. _disk text "menu:'{ALANGUAGE}'/useredit.txt" ; Infotext anzeigen
  136. _input/maxlength=20 NAME ""        ; Prompt steht im Info / Name eingeben
  137. _if NAME == "" then _goto EDIT_USER_ED    ; Bei Leereingabe EDIT USER
  138. _check user "'NAME'" MENU        ; Falls User nicht existiert -> Menue
  139. EDIT_USER_ED:
  140. _edit user "'NAME'"            ; Userdaten aendern
  141. _goto MENU                ; -> Menue
  142.  
  143. ;
  144. ; **** SUBROUTINE: Gib einen Infotext aus und warte auf Taste
  145. ;
  146. WAIT:
  147. COM_OLD=COM                ; Alten Menupunkt retten
  148. COM="WAIT"                ; Neuen Menupunkt setzen
  149. _echo/nolf "^J[RETURN]"            ; Gib Wartemeldung aus
  150. _waitkey " ^M"                ; Warte auf Space oder Return
  151. COM=COM_OLD                ; Alten Menupunkt setzen
  152. _return                    ; Ende der Unterroutine
  153.  
  154. ;
  155. ; **** Fehlerbehandlungs-Routine
  156. ;
  157. ; Die Routine erwartet in der Variable COM den Namen des akt. Menupunkts.
  158. ; Sie protokolliert im File mbdat:menu.err die Fehler des Menues.
  159. ;
  160. SAVE_ERROR:
  161. _on error/ignore            ; Alle Fehler ignorieren
  162. _extern echo >>mbdat:menu.err "------------------"
  163. _extern echo >>mbdat:menu.err "Fehler im Menu"
  164. _extern echo >>mbdat:menu.err "Menu : 'MENU'"
  165. _extern echo >>mbdat:menu.err "Punkt: 'COM'"
  166. _extern echo >>mbdat:menu.err "User : '{NAME}'"
  167. _extern echo >>mbdat:menu.err "Datum: '{DATE}'"
  168. _extern echo >>mbdat:menu.err "Zeit : '{TIME}'"
  169. _extern echo >>mbdat:menu.err "------------------"
  170. _disk text "menu:'{ALANGUAGE}'/Error.txt"  ; Fehlertext anzeigen
  171. _waitkey " ^M"
  172. _if COM == "Menu" then _goto END    ; Wenn Fehler im Menue -> Main-Menue
  173. _goto MENU                ; -> Menue
  174.